package com.travel.server.manager.model;

import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;

public class CustomerInfoExample extends PageExample{
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public CustomerInfoExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        protected void addCriterionForJDBCDate(String condition, Date value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value.getTime()), property);
        }

        protected void addCriterionForJDBCDate(String condition, List<Date> values, String property) {
            if (values == null || values.size() == 0) {
                throw new RuntimeException("Value list for " + property + " cannot be null or empty");
            }
            List<java.sql.Date> dateList = new ArrayList<java.sql.Date>();
            Iterator<Date> iter = values.iterator();
            while (iter.hasNext()) {
                dateList.add(new java.sql.Date(iter.next().getTime()));
            }
            addCriterion(condition, dateList, property);
        }

        protected void addCriterionForJDBCDate(String condition, Date value1, Date value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value1.getTime()), new java.sql.Date(value2.getTime()), property);
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andNameIsNull() {
            addCriterion("name is null");
            return (Criteria) this;
        }

        public Criteria andNameIsNotNull() {
            addCriterion("name is not null");
            return (Criteria) this;
        }

        public Criteria andNameEqualTo(String value) {
            addCriterion("name =", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotEqualTo(String value) {
            addCriterion("name <>", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThan(String value) {
            addCriterion("name >", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThanOrEqualTo(String value) {
            addCriterion("name >=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThan(String value) {
            addCriterion("name <", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThanOrEqualTo(String value) {
            addCriterion("name <=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLike(String value) {
            addCriterion("name like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotLike(String value) {
            addCriterion("name not like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameIn(List<String> values) {
            addCriterion("name in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotIn(List<String> values) {
            addCriterion("name not in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameBetween(String value1, String value2) {
            addCriterion("name between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotBetween(String value1, String value2) {
            addCriterion("name not between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andMobileIsNull() {
            addCriterion("mobile is null");
            return (Criteria) this;
        }

        public Criteria andMobileIsNotNull() {
            addCriterion("mobile is not null");
            return (Criteria) this;
        }

        public Criteria andMobileEqualTo(String value) {
            addCriterion("mobile =", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileNotEqualTo(String value) {
            addCriterion("mobile <>", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileGreaterThan(String value) {
            addCriterion("mobile >", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileGreaterThanOrEqualTo(String value) {
            addCriterion("mobile >=", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileLessThan(String value) {
            addCriterion("mobile <", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileLessThanOrEqualTo(String value) {
            addCriterion("mobile <=", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileLike(String value) {
            addCriterion("mobile like", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileNotLike(String value) {
            addCriterion("mobile not like", value, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileIn(List<String> values) {
            addCriterion("mobile in", values, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileNotIn(List<String> values) {
            addCriterion("mobile not in", values, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileBetween(String value1, String value2) {
            addCriterion("mobile between", value1, value2, "mobile");
            return (Criteria) this;
        }

        public Criteria andMobileNotBetween(String value1, String value2) {
            addCriterion("mobile not between", value1, value2, "mobile");
            return (Criteria) this;
        }

        public Criteria andWechatNumberIsNull() {
            addCriterion("wechat_number is null");
            return (Criteria) this;
        }

        public Criteria andWechatNumberIsNotNull() {
            addCriterion("wechat_number is not null");
            return (Criteria) this;
        }

        public Criteria andWechatNumberEqualTo(String value) {
            addCriterion("wechat_number =", value, "wechatNumber");
            return (Criteria) this;
        }

        public Criteria andWechatNumberNotEqualTo(String value) {
            addCriterion("wechat_number <>", value, "wechatNumber");
            return (Criteria) this;
        }

        public Criteria andWechatNumberGreaterThan(String value) {
            addCriterion("wechat_number >", value, "wechatNumber");
            return (Criteria) this;
        }

        public Criteria andWechatNumberGreaterThanOrEqualTo(String value) {
            addCriterion("wechat_number >=", value, "wechatNumber");
            return (Criteria) this;
        }

        public Criteria andWechatNumberLessThan(String value) {
            addCriterion("wechat_number <", value, "wechatNumber");
            return (Criteria) this;
        }

        public Criteria andWechatNumberLessThanOrEqualTo(String value) {
            addCriterion("wechat_number <=", value, "wechatNumber");
            return (Criteria) this;
        }

        public Criteria andWechatNumberLike(String value) {
            addCriterion("wechat_number like", value, "wechatNumber");
            return (Criteria) this;
        }

        public Criteria andWechatNumberNotLike(String value) {
            addCriterion("wechat_number not like", value, "wechatNumber");
            return (Criteria) this;
        }

        public Criteria andWechatNumberIn(List<String> values) {
            addCriterion("wechat_number in", values, "wechatNumber");
            return (Criteria) this;
        }

        public Criteria andWechatNumberNotIn(List<String> values) {
            addCriterion("wechat_number not in", values, "wechatNumber");
            return (Criteria) this;
        }

        public Criteria andWechatNumberBetween(String value1, String value2) {
            addCriterion("wechat_number between", value1, value2, "wechatNumber");
            return (Criteria) this;
        }

        public Criteria andWechatNumberNotBetween(String value1, String value2) {
            addCriterion("wechat_number not between", value1, value2, "wechatNumber");
            return (Criteria) this;
        }

        public Criteria andWechatNickIsNull() {
            addCriterion("wechat_nick is null");
            return (Criteria) this;
        }

        public Criteria andWechatNickIsNotNull() {
            addCriterion("wechat_nick is not null");
            return (Criteria) this;
        }

        public Criteria andWechatNickEqualTo(String value) {
            addCriterion("wechat_nick =", value, "wechatNick");
            return (Criteria) this;
        }

        public Criteria andWechatNickNotEqualTo(String value) {
            addCriterion("wechat_nick <>", value, "wechatNick");
            return (Criteria) this;
        }

        public Criteria andWechatNickGreaterThan(String value) {
            addCriterion("wechat_nick >", value, "wechatNick");
            return (Criteria) this;
        }

        public Criteria andWechatNickGreaterThanOrEqualTo(String value) {
            addCriterion("wechat_nick >=", value, "wechatNick");
            return (Criteria) this;
        }

        public Criteria andWechatNickLessThan(String value) {
            addCriterion("wechat_nick <", value, "wechatNick");
            return (Criteria) this;
        }

        public Criteria andWechatNickLessThanOrEqualTo(String value) {
            addCriterion("wechat_nick <=", value, "wechatNick");
            return (Criteria) this;
        }

        public Criteria andWechatNickLike(String value) {
            addCriterion("wechat_nick like", value, "wechatNick");
            return (Criteria) this;
        }

        public Criteria andWechatNickNotLike(String value) {
            addCriterion("wechat_nick not like", value, "wechatNick");
            return (Criteria) this;
        }

        public Criteria andWechatNickIn(List<String> values) {
            addCriterion("wechat_nick in", values, "wechatNick");
            return (Criteria) this;
        }

        public Criteria andWechatNickNotIn(List<String> values) {
            addCriterion("wechat_nick not in", values, "wechatNick");
            return (Criteria) this;
        }

        public Criteria andWechatNickBetween(String value1, String value2) {
            addCriterion("wechat_nick between", value1, value2, "wechatNick");
            return (Criteria) this;
        }

        public Criteria andWechatNickNotBetween(String value1, String value2) {
            addCriterion("wechat_nick not between", value1, value2, "wechatNick");
            return (Criteria) this;
        }

        public Criteria andMemberGradeIdIsNull() {
            addCriterion("member_grade_id is null");
            return (Criteria) this;
        }

        public Criteria andMemberGradeIdIsNotNull() {
            addCriterion("member_grade_id is not null");
            return (Criteria) this;
        }

        public Criteria andMemberGradeIdEqualTo(Integer value) {
            addCriterion("member_grade_id =", value, "memberGradeId");
            return (Criteria) this;
        }

        public Criteria andMemberGradeIdNotEqualTo(Integer value) {
            addCriterion("member_grade_id <>", value, "memberGradeId");
            return (Criteria) this;
        }

        public Criteria andMemberGradeIdGreaterThan(Integer value) {
            addCriterion("member_grade_id >", value, "memberGradeId");
            return (Criteria) this;
        }

        public Criteria andMemberGradeIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("member_grade_id >=", value, "memberGradeId");
            return (Criteria) this;
        }

        public Criteria andMemberGradeIdLessThan(Integer value) {
            addCriterion("member_grade_id <", value, "memberGradeId");
            return (Criteria) this;
        }

        public Criteria andMemberGradeIdLessThanOrEqualTo(Integer value) {
            addCriterion("member_grade_id <=", value, "memberGradeId");
            return (Criteria) this;
        }

        public Criteria andMemberGradeIdIn(List<Integer> values) {
            addCriterion("member_grade_id in", values, "memberGradeId");
            return (Criteria) this;
        }

        public Criteria andMemberGradeIdNotIn(List<Integer> values) {
            addCriterion("member_grade_id not in", values, "memberGradeId");
            return (Criteria) this;
        }

        public Criteria andMemberGradeIdBetween(Integer value1, Integer value2) {
            addCriterion("member_grade_id between", value1, value2, "memberGradeId");
            return (Criteria) this;
        }

        public Criteria andMemberGradeIdNotBetween(Integer value1, Integer value2) {
            addCriterion("member_grade_id not between", value1, value2, "memberGradeId");
            return (Criteria) this;
        }

        public Criteria andSourceIsNull() {
            addCriterion("source is null");
            return (Criteria) this;
        }

        public Criteria andSourceIsNotNull() {
            addCriterion("source is not null");
            return (Criteria) this;
        }

        public Criteria andSourceEqualTo(String value) {
            addCriterion("source =", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceNotEqualTo(String value) {
            addCriterion("source <>", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceGreaterThan(String value) {
            addCriterion("source >", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceGreaterThanOrEqualTo(String value) {
            addCriterion("source >=", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceLessThan(String value) {
            addCriterion("source <", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceLessThanOrEqualTo(String value) {
            addCriterion("source <=", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceLike(String value) {
            addCriterion("source like", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceNotLike(String value) {
            addCriterion("source not like", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceIn(List<String> values) {
            addCriterion("source in", values, "source");
            return (Criteria) this;
        }

        public Criteria andSourceNotIn(List<String> values) {
            addCriterion("source not in", values, "source");
            return (Criteria) this;
        }

        public Criteria andSourceBetween(String value1, String value2) {
            addCriterion("source between", value1, value2, "source");
            return (Criteria) this;
        }

        public Criteria andSourceNotBetween(String value1, String value2) {
            addCriterion("source not between", value1, value2, "source");
            return (Criteria) this;
        }

        public Criteria andMailIsNull() {
            addCriterion("mail is null");
            return (Criteria) this;
        }

        public Criteria andMailIsNotNull() {
            addCriterion("mail is not null");
            return (Criteria) this;
        }

        public Criteria andMailEqualTo(String value) {
            addCriterion("mail =", value, "mail");
            return (Criteria) this;
        }

        public Criteria andMailNotEqualTo(String value) {
            addCriterion("mail <>", value, "mail");
            return (Criteria) this;
        }

        public Criteria andMailGreaterThan(String value) {
            addCriterion("mail >", value, "mail");
            return (Criteria) this;
        }

        public Criteria andMailGreaterThanOrEqualTo(String value) {
            addCriterion("mail >=", value, "mail");
            return (Criteria) this;
        }

        public Criteria andMailLessThan(String value) {
            addCriterion("mail <", value, "mail");
            return (Criteria) this;
        }

        public Criteria andMailLessThanOrEqualTo(String value) {
            addCriterion("mail <=", value, "mail");
            return (Criteria) this;
        }

        public Criteria andMailLike(String value) {
            addCriterion("mail like", value, "mail");
            return (Criteria) this;
        }

        public Criteria andMailNotLike(String value) {
            addCriterion("mail not like", value, "mail");
            return (Criteria) this;
        }

        public Criteria andMailIn(List<String> values) {
            addCriterion("mail in", values, "mail");
            return (Criteria) this;
        }

        public Criteria andMailNotIn(List<String> values) {
            addCriterion("mail not in", values, "mail");
            return (Criteria) this;
        }

        public Criteria andMailBetween(String value1, String value2) {
            addCriterion("mail between", value1, value2, "mail");
            return (Criteria) this;
        }

        public Criteria andMailNotBetween(String value1, String value2) {
            addCriterion("mail not between", value1, value2, "mail");
            return (Criteria) this;
        }

        public Criteria andBeCustomerTimeIsNull() {
            addCriterion("be_customer_time is null");
            return (Criteria) this;
        }

        public Criteria andBeCustomerTimeIsNotNull() {
            addCriterion("be_customer_time is not null");
            return (Criteria) this;
        }

        public Criteria andBeCustomerTimeEqualTo(Date value) {
            addCriterion("be_customer_time =", value, "beCustomerTime");
            return (Criteria) this;
        }

        public Criteria andBeCustomerTimeNotEqualTo(Date value) {
            addCriterion("be_customer_time <>", value, "beCustomerTime");
            return (Criteria) this;
        }

        public Criteria andBeCustomerTimeGreaterThan(Date value) {
            addCriterion("be_customer_time >", value, "beCustomerTime");
            return (Criteria) this;
        }

        public Criteria andBeCustomerTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("be_customer_time >=", value, "beCustomerTime");
            return (Criteria) this;
        }

        public Criteria andBeCustomerTimeLessThan(Date value) {
            addCriterion("be_customer_time <", value, "beCustomerTime");
            return (Criteria) this;
        }

        public Criteria andBeCustomerTimeLessThanOrEqualTo(Date value) {
            addCriterion("be_customer_time <=", value, "beCustomerTime");
            return (Criteria) this;
        }

        public Criteria andBeCustomerTimeIn(List<Date> values) {
            addCriterion("be_customer_time in", values, "beCustomerTime");
            return (Criteria) this;
        }

        public Criteria andBeCustomerTimeNotIn(List<Date> values) {
            addCriterion("be_customer_time not in", values, "beCustomerTime");
            return (Criteria) this;
        }

        public Criteria andBeCustomerTimeBetween(Date value1, Date value2) {
            addCriterion("be_customer_time between", value1, value2, "beCustomerTime");
            return (Criteria) this;
        }

        public Criteria andBeCustomerTimeNotBetween(Date value1, Date value2) {
            addCriterion("be_customer_time not between", value1, value2, "beCustomerTime");
            return (Criteria) this;
        }

        public Criteria andLastInviteIsNull() {
            addCriterion("last_invite is null");
            return (Criteria) this;
        }

        public Criteria andLastInviteIsNotNull() {
            addCriterion("last_invite is not null");
            return (Criteria) this;
        }

        public Criteria andLastInviteEqualTo(String value) {
            addCriterion("last_invite =", value, "lastInvite");
            return (Criteria) this;
        }

        public Criteria andLastInviteNotEqualTo(String value) {
            addCriterion("last_invite <>", value, "lastInvite");
            return (Criteria) this;
        }

        public Criteria andLastInviteGreaterThan(String value) {
            addCriterion("last_invite >", value, "lastInvite");
            return (Criteria) this;
        }

        public Criteria andLastInviteGreaterThanOrEqualTo(String value) {
            addCriterion("last_invite >=", value, "lastInvite");
            return (Criteria) this;
        }

        public Criteria andLastInviteLessThan(String value) {
            addCriterion("last_invite <", value, "lastInvite");
            return (Criteria) this;
        }

        public Criteria andLastInviteLessThanOrEqualTo(String value) {
            addCriterion("last_invite <=", value, "lastInvite");
            return (Criteria) this;
        }

        public Criteria andLastInviteLike(String value) {
            addCriterion("last_invite like", value, "lastInvite");
            return (Criteria) this;
        }

        public Criteria andLastInviteNotLike(String value) {
            addCriterion("last_invite not like", value, "lastInvite");
            return (Criteria) this;
        }

        public Criteria andLastInviteIn(List<String> values) {
            addCriterion("last_invite in", values, "lastInvite");
            return (Criteria) this;
        }

        public Criteria andLastInviteNotIn(List<String> values) {
            addCriterion("last_invite not in", values, "lastInvite");
            return (Criteria) this;
        }

        public Criteria andLastInviteBetween(String value1, String value2) {
            addCriterion("last_invite between", value1, value2, "lastInvite");
            return (Criteria) this;
        }

        public Criteria andLastInviteNotBetween(String value1, String value2) {
            addCriterion("last_invite not between", value1, value2, "lastInvite");
            return (Criteria) this;
        }

        public Criteria andSexIsNull() {
            addCriterion("sex is null");
            return (Criteria) this;
        }

        public Criteria andSexIsNotNull() {
            addCriterion("sex is not null");
            return (Criteria) this;
        }

        public Criteria andSexEqualTo(String value) {
            addCriterion("sex =", value, "sex");
            return (Criteria) this;
        }

        public Criteria andSexNotEqualTo(String value) {
            addCriterion("sex <>", value, "sex");
            return (Criteria) this;
        }

        public Criteria andSexGreaterThan(String value) {
            addCriterion("sex >", value, "sex");
            return (Criteria) this;
        }

        public Criteria andSexGreaterThanOrEqualTo(String value) {
            addCriterion("sex >=", value, "sex");
            return (Criteria) this;
        }

        public Criteria andSexLessThan(String value) {
            addCriterion("sex <", value, "sex");
            return (Criteria) this;
        }

        public Criteria andSexLessThanOrEqualTo(String value) {
            addCriterion("sex <=", value, "sex");
            return (Criteria) this;
        }

        public Criteria andSexLike(String value) {
            addCriterion("sex like", value, "sex");
            return (Criteria) this;
        }

        public Criteria andSexNotLike(String value) {
            addCriterion("sex not like", value, "sex");
            return (Criteria) this;
        }

        public Criteria andSexIn(List<String> values) {
            addCriterion("sex in", values, "sex");
            return (Criteria) this;
        }

        public Criteria andSexNotIn(List<String> values) {
            addCriterion("sex not in", values, "sex");
            return (Criteria) this;
        }

        public Criteria andSexBetween(String value1, String value2) {
            addCriterion("sex between", value1, value2, "sex");
            return (Criteria) this;
        }

        public Criteria andSexNotBetween(String value1, String value2) {
            addCriterion("sex not between", value1, value2, "sex");
            return (Criteria) this;
        }

        public Criteria andBirthDateIsNull() {
            addCriterion("birth_date is null");
            return (Criteria) this;
        }

        public Criteria andBirthDateIsNotNull() {
            addCriterion("birth_date is not null");
            return (Criteria) this;
        }

        public Criteria andBirthDateEqualTo(Date value) {
            addCriterionForJDBCDate("birth_date =", value, "birthDate");
            return (Criteria) this;
        }

        public Criteria andBirthDateNotEqualTo(Date value) {
            addCriterionForJDBCDate("birth_date <>", value, "birthDate");
            return (Criteria) this;
        }

        public Criteria andBirthDateGreaterThan(Date value) {
            addCriterionForJDBCDate("birth_date >", value, "birthDate");
            return (Criteria) this;
        }

        public Criteria andBirthDateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("birth_date >=", value, "birthDate");
            return (Criteria) this;
        }

        public Criteria andBirthDateLessThan(Date value) {
            addCriterionForJDBCDate("birth_date <", value, "birthDate");
            return (Criteria) this;
        }

        public Criteria andBirthDateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("birth_date <=", value, "birthDate");
            return (Criteria) this;
        }

        public Criteria andBirthDateIn(List<Date> values) {
            addCriterionForJDBCDate("birth_date in", values, "birthDate");
            return (Criteria) this;
        }

        public Criteria andBirthDateNotIn(List<Date> values) {
            addCriterionForJDBCDate("birth_date not in", values, "birthDate");
            return (Criteria) this;
        }

        public Criteria andBirthDateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("birth_date between", value1, value2, "birthDate");
            return (Criteria) this;
        }

        public Criteria andBirthDateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("birth_date not between", value1, value2, "birthDate");
            return (Criteria) this;
        }

        public Criteria andNoteIsNull() {
            addCriterion("note is null");
            return (Criteria) this;
        }

        public Criteria andNoteIsNotNull() {
            addCriterion("note is not null");
            return (Criteria) this;
        }

        public Criteria andNoteEqualTo(String value) {
            addCriterion("note =", value, "note");
            return (Criteria) this;
        }

        public Criteria andNoteNotEqualTo(String value) {
            addCriterion("note <>", value, "note");
            return (Criteria) this;
        }

        public Criteria andNoteGreaterThan(String value) {
            addCriterion("note >", value, "note");
            return (Criteria) this;
        }

        public Criteria andNoteGreaterThanOrEqualTo(String value) {
            addCriterion("note >=", value, "note");
            return (Criteria) this;
        }

        public Criteria andNoteLessThan(String value) {
            addCriterion("note <", value, "note");
            return (Criteria) this;
        }

        public Criteria andNoteLessThanOrEqualTo(String value) {
            addCriterion("note <=", value, "note");
            return (Criteria) this;
        }

        public Criteria andNoteLike(String value) {
            addCriterion("note like", value, "note");
            return (Criteria) this;
        }

        public Criteria andNoteNotLike(String value) {
            addCriterion("note not like", value, "note");
            return (Criteria) this;
        }

        public Criteria andNoteIn(List<String> values) {
            addCriterion("note in", values, "note");
            return (Criteria) this;
        }

        public Criteria andNoteNotIn(List<String> values) {
            addCriterion("note not in", values, "note");
            return (Criteria) this;
        }

        public Criteria andNoteBetween(String value1, String value2) {
            addCriterion("note between", value1, value2, "note");
            return (Criteria) this;
        }

        public Criteria andNoteNotBetween(String value1, String value2) {
            addCriterion("note not between", value1, value2, "note");
            return (Criteria) this;
        }

        public Criteria andLiveCountryIsNull() {
            addCriterion("live_country is null");
            return (Criteria) this;
        }

        public Criteria andLiveCountryIsNotNull() {
            addCriterion("live_country is not null");
            return (Criteria) this;
        }

        public Criteria andLiveCountryEqualTo(String value) {
            addCriterion("live_country =", value, "liveCountry");
            return (Criteria) this;
        }

        public Criteria andLiveCountryNotEqualTo(String value) {
            addCriterion("live_country <>", value, "liveCountry");
            return (Criteria) this;
        }

        public Criteria andLiveCountryGreaterThan(String value) {
            addCriterion("live_country >", value, "liveCountry");
            return (Criteria) this;
        }

        public Criteria andLiveCountryGreaterThanOrEqualTo(String value) {
            addCriterion("live_country >=", value, "liveCountry");
            return (Criteria) this;
        }

        public Criteria andLiveCountryLessThan(String value) {
            addCriterion("live_country <", value, "liveCountry");
            return (Criteria) this;
        }

        public Criteria andLiveCountryLessThanOrEqualTo(String value) {
            addCriterion("live_country <=", value, "liveCountry");
            return (Criteria) this;
        }

        public Criteria andLiveCountryLike(String value) {
            addCriterion("live_country like", value, "liveCountry");
            return (Criteria) this;
        }

        public Criteria andLiveCountryNotLike(String value) {
            addCriterion("live_country not like", value, "liveCountry");
            return (Criteria) this;
        }

        public Criteria andLiveCountryIn(List<String> values) {
            addCriterion("live_country in", values, "liveCountry");
            return (Criteria) this;
        }

        public Criteria andLiveCountryNotIn(List<String> values) {
            addCriterion("live_country not in", values, "liveCountry");
            return (Criteria) this;
        }

        public Criteria andLiveCountryBetween(String value1, String value2) {
            addCriterion("live_country between", value1, value2, "liveCountry");
            return (Criteria) this;
        }

        public Criteria andLiveCountryNotBetween(String value1, String value2) {
            addCriterion("live_country not between", value1, value2, "liveCountry");
            return (Criteria) this;
        }

        public Criteria andLiveProvinceIsNull() {
            addCriterion("live_province is null");
            return (Criteria) this;
        }

        public Criteria andLiveProvinceIsNotNull() {
            addCriterion("live_province is not null");
            return (Criteria) this;
        }

        public Criteria andLiveProvinceEqualTo(String value) {
            addCriterion("live_province =", value, "liveProvince");
            return (Criteria) this;
        }

        public Criteria andLiveProvinceNotEqualTo(String value) {
            addCriterion("live_province <>", value, "liveProvince");
            return (Criteria) this;
        }

        public Criteria andLiveProvinceGreaterThan(String value) {
            addCriterion("live_province >", value, "liveProvince");
            return (Criteria) this;
        }

        public Criteria andLiveProvinceGreaterThanOrEqualTo(String value) {
            addCriterion("live_province >=", value, "liveProvince");
            return (Criteria) this;
        }

        public Criteria andLiveProvinceLessThan(String value) {
            addCriterion("live_province <", value, "liveProvince");
            return (Criteria) this;
        }

        public Criteria andLiveProvinceLessThanOrEqualTo(String value) {
            addCriterion("live_province <=", value, "liveProvince");
            return (Criteria) this;
        }

        public Criteria andLiveProvinceLike(String value) {
            addCriterion("live_province like", value, "liveProvince");
            return (Criteria) this;
        }

        public Criteria andLiveProvinceNotLike(String value) {
            addCriterion("live_province not like", value, "liveProvince");
            return (Criteria) this;
        }

        public Criteria andLiveProvinceIn(List<String> values) {
            addCriterion("live_province in", values, "liveProvince");
            return (Criteria) this;
        }

        public Criteria andLiveProvinceNotIn(List<String> values) {
            addCriterion("live_province not in", values, "liveProvince");
            return (Criteria) this;
        }

        public Criteria andLiveProvinceBetween(String value1, String value2) {
            addCriterion("live_province between", value1, value2, "liveProvince");
            return (Criteria) this;
        }

        public Criteria andLiveProvinceNotBetween(String value1, String value2) {
            addCriterion("live_province not between", value1, value2, "liveProvince");
            return (Criteria) this;
        }

        public Criteria andLiveCityIsNull() {
            addCriterion("live_city is null");
            return (Criteria) this;
        }

        public Criteria andLiveCityIsNotNull() {
            addCriterion("live_city is not null");
            return (Criteria) this;
        }

        public Criteria andLiveCityEqualTo(String value) {
            addCriterion("live_city =", value, "liveCity");
            return (Criteria) this;
        }

        public Criteria andLiveCityNotEqualTo(String value) {
            addCriterion("live_city <>", value, "liveCity");
            return (Criteria) this;
        }

        public Criteria andLiveCityGreaterThan(String value) {
            addCriterion("live_city >", value, "liveCity");
            return (Criteria) this;
        }

        public Criteria andLiveCityGreaterThanOrEqualTo(String value) {
            addCriterion("live_city >=", value, "liveCity");
            return (Criteria) this;
        }

        public Criteria andLiveCityLessThan(String value) {
            addCriterion("live_city <", value, "liveCity");
            return (Criteria) this;
        }

        public Criteria andLiveCityLessThanOrEqualTo(String value) {
            addCriterion("live_city <=", value, "liveCity");
            return (Criteria) this;
        }

        public Criteria andLiveCityLike(String value) {
            addCriterion("live_city like", value, "liveCity");
            return (Criteria) this;
        }

        public Criteria andLiveCityNotLike(String value) {
            addCriterion("live_city not like", value, "liveCity");
            return (Criteria) this;
        }

        public Criteria andLiveCityIn(List<String> values) {
            addCriterion("live_city in", values, "liveCity");
            return (Criteria) this;
        }

        public Criteria andLiveCityNotIn(List<String> values) {
            addCriterion("live_city not in", values, "liveCity");
            return (Criteria) this;
        }

        public Criteria andLiveCityBetween(String value1, String value2) {
            addCriterion("live_city between", value1, value2, "liveCity");
            return (Criteria) this;
        }

        public Criteria andLiveCityNotBetween(String value1, String value2) {
            addCriterion("live_city not between", value1, value2, "liveCity");
            return (Criteria) this;
        }

        public Criteria andLiveAreaIsNull() {
            addCriterion("live_area is null");
            return (Criteria) this;
        }

        public Criteria andLiveAreaIsNotNull() {
            addCriterion("live_area is not null");
            return (Criteria) this;
        }

        public Criteria andLiveAreaEqualTo(String value) {
            addCriterion("live_area =", value, "liveArea");
            return (Criteria) this;
        }

        public Criteria andLiveAreaNotEqualTo(String value) {
            addCriterion("live_area <>", value, "liveArea");
            return (Criteria) this;
        }

        public Criteria andLiveAreaGreaterThan(String value) {
            addCriterion("live_area >", value, "liveArea");
            return (Criteria) this;
        }

        public Criteria andLiveAreaGreaterThanOrEqualTo(String value) {
            addCriterion("live_area >=", value, "liveArea");
            return (Criteria) this;
        }

        public Criteria andLiveAreaLessThan(String value) {
            addCriterion("live_area <", value, "liveArea");
            return (Criteria) this;
        }

        public Criteria andLiveAreaLessThanOrEqualTo(String value) {
            addCriterion("live_area <=", value, "liveArea");
            return (Criteria) this;
        }

        public Criteria andLiveAreaLike(String value) {
            addCriterion("live_area like", value, "liveArea");
            return (Criteria) this;
        }

        public Criteria andLiveAreaNotLike(String value) {
            addCriterion("live_area not like", value, "liveArea");
            return (Criteria) this;
        }

        public Criteria andLiveAreaIn(List<String> values) {
            addCriterion("live_area in", values, "liveArea");
            return (Criteria) this;
        }

        public Criteria andLiveAreaNotIn(List<String> values) {
            addCriterion("live_area not in", values, "liveArea");
            return (Criteria) this;
        }

        public Criteria andLiveAreaBetween(String value1, String value2) {
            addCriterion("live_area between", value1, value2, "liveArea");
            return (Criteria) this;
        }

        public Criteria andLiveAreaNotBetween(String value1, String value2) {
            addCriterion("live_area not between", value1, value2, "liveArea");
            return (Criteria) this;
        }

        public Criteria andLiveAddressIsNull() {
            addCriterion("live_address is null");
            return (Criteria) this;
        }

        public Criteria andLiveAddressIsNotNull() {
            addCriterion("live_address is not null");
            return (Criteria) this;
        }

        public Criteria andLiveAddressEqualTo(String value) {
            addCriterion("live_address =", value, "liveAddress");
            return (Criteria) this;
        }

        public Criteria andLiveAddressNotEqualTo(String value) {
            addCriterion("live_address <>", value, "liveAddress");
            return (Criteria) this;
        }

        public Criteria andLiveAddressGreaterThan(String value) {
            addCriterion("live_address >", value, "liveAddress");
            return (Criteria) this;
        }

        public Criteria andLiveAddressGreaterThanOrEqualTo(String value) {
            addCriterion("live_address >=", value, "liveAddress");
            return (Criteria) this;
        }

        public Criteria andLiveAddressLessThan(String value) {
            addCriterion("live_address <", value, "liveAddress");
            return (Criteria) this;
        }

        public Criteria andLiveAddressLessThanOrEqualTo(String value) {
            addCriterion("live_address <=", value, "liveAddress");
            return (Criteria) this;
        }

        public Criteria andLiveAddressLike(String value) {
            addCriterion("live_address like", value, "liveAddress");
            return (Criteria) this;
        }

        public Criteria andLiveAddressNotLike(String value) {
            addCriterion("live_address not like", value, "liveAddress");
            return (Criteria) this;
        }

        public Criteria andLiveAddressIn(List<String> values) {
            addCriterion("live_address in", values, "liveAddress");
            return (Criteria) this;
        }

        public Criteria andLiveAddressNotIn(List<String> values) {
            addCriterion("live_address not in", values, "liveAddress");
            return (Criteria) this;
        }

        public Criteria andLiveAddressBetween(String value1, String value2) {
            addCriterion("live_address between", value1, value2, "liveAddress");
            return (Criteria) this;
        }

        public Criteria andLiveAddressNotBetween(String value1, String value2) {
            addCriterion("live_address not between", value1, value2, "liveAddress");
            return (Criteria) this;
        }

        public Criteria andSchoolIsNull() {
            addCriterion("school is null");
            return (Criteria) this;
        }

        public Criteria andSchoolIsNotNull() {
            addCriterion("school is not null");
            return (Criteria) this;
        }

        public Criteria andSchoolEqualTo(String value) {
            addCriterion("school =", value, "school");
            return (Criteria) this;
        }

        public Criteria andSchoolNotEqualTo(String value) {
            addCriterion("school <>", value, "school");
            return (Criteria) this;
        }

        public Criteria andSchoolGreaterThan(String value) {
            addCriterion("school >", value, "school");
            return (Criteria) this;
        }

        public Criteria andSchoolGreaterThanOrEqualTo(String value) {
            addCriterion("school >=", value, "school");
            return (Criteria) this;
        }

        public Criteria andSchoolLessThan(String value) {
            addCriterion("school <", value, "school");
            return (Criteria) this;
        }

        public Criteria andSchoolLessThanOrEqualTo(String value) {
            addCriterion("school <=", value, "school");
            return (Criteria) this;
        }

        public Criteria andSchoolLike(String value) {
            addCriterion("school like", value, "school");
            return (Criteria) this;
        }

        public Criteria andSchoolNotLike(String value) {
            addCriterion("school not like", value, "school");
            return (Criteria) this;
        }

        public Criteria andSchoolIn(List<String> values) {
            addCriterion("school in", values, "school");
            return (Criteria) this;
        }

        public Criteria andSchoolNotIn(List<String> values) {
            addCriterion("school not in", values, "school");
            return (Criteria) this;
        }

        public Criteria andSchoolBetween(String value1, String value2) {
            addCriterion("school between", value1, value2, "school");
            return (Criteria) this;
        }

        public Criteria andSchoolNotBetween(String value1, String value2) {
            addCriterion("school not between", value1, value2, "school");
            return (Criteria) this;
        }

        public Criteria andMajorIsNull() {
            addCriterion("major is null");
            return (Criteria) this;
        }

        public Criteria andMajorIsNotNull() {
            addCriterion("major is not null");
            return (Criteria) this;
        }

        public Criteria andMajorEqualTo(String value) {
            addCriterion("major =", value, "major");
            return (Criteria) this;
        }

        public Criteria andMajorNotEqualTo(String value) {
            addCriterion("major <>", value, "major");
            return (Criteria) this;
        }

        public Criteria andMajorGreaterThan(String value) {
            addCriterion("major >", value, "major");
            return (Criteria) this;
        }

        public Criteria andMajorGreaterThanOrEqualTo(String value) {
            addCriterion("major >=", value, "major");
            return (Criteria) this;
        }

        public Criteria andMajorLessThan(String value) {
            addCriterion("major <", value, "major");
            return (Criteria) this;
        }

        public Criteria andMajorLessThanOrEqualTo(String value) {
            addCriterion("major <=", value, "major");
            return (Criteria) this;
        }

        public Criteria andMajorLike(String value) {
            addCriterion("major like", value, "major");
            return (Criteria) this;
        }

        public Criteria andMajorNotLike(String value) {
            addCriterion("major not like", value, "major");
            return (Criteria) this;
        }

        public Criteria andMajorIn(List<String> values) {
            addCriterion("major in", values, "major");
            return (Criteria) this;
        }

        public Criteria andMajorNotIn(List<String> values) {
            addCriterion("major not in", values, "major");
            return (Criteria) this;
        }

        public Criteria andMajorBetween(String value1, String value2) {
            addCriterion("major between", value1, value2, "major");
            return (Criteria) this;
        }

        public Criteria andMajorNotBetween(String value1, String value2) {
            addCriterion("major not between", value1, value2, "major");
            return (Criteria) this;
        }

        public Criteria andHobbyIsNull() {
            addCriterion("hobby is null");
            return (Criteria) this;
        }

        public Criteria andHobbyIsNotNull() {
            addCriterion("hobby is not null");
            return (Criteria) this;
        }

        public Criteria andHobbyEqualTo(String value) {
            addCriterion("hobby =", value, "hobby");
            return (Criteria) this;
        }

        public Criteria andHobbyNotEqualTo(String value) {
            addCriterion("hobby <>", value, "hobby");
            return (Criteria) this;
        }

        public Criteria andHobbyGreaterThan(String value) {
            addCriterion("hobby >", value, "hobby");
            return (Criteria) this;
        }

        public Criteria andHobbyGreaterThanOrEqualTo(String value) {
            addCriterion("hobby >=", value, "hobby");
            return (Criteria) this;
        }

        public Criteria andHobbyLessThan(String value) {
            addCriterion("hobby <", value, "hobby");
            return (Criteria) this;
        }

        public Criteria andHobbyLessThanOrEqualTo(String value) {
            addCriterion("hobby <=", value, "hobby");
            return (Criteria) this;
        }

        public Criteria andHobbyLike(String value) {
            addCriterion("hobby like", value, "hobby");
            return (Criteria) this;
        }

        public Criteria andHobbyNotLike(String value) {
            addCriterion("hobby not like", value, "hobby");
            return (Criteria) this;
        }

        public Criteria andHobbyIn(List<String> values) {
            addCriterion("hobby in", values, "hobby");
            return (Criteria) this;
        }

        public Criteria andHobbyNotIn(List<String> values) {
            addCriterion("hobby not in", values, "hobby");
            return (Criteria) this;
        }

        public Criteria andHobbyBetween(String value1, String value2) {
            addCriterion("hobby between", value1, value2, "hobby");
            return (Criteria) this;
        }

        public Criteria andHobbyNotBetween(String value1, String value2) {
            addCriterion("hobby not between", value1, value2, "hobby");
            return (Criteria) this;
        }

        public Criteria andGraduateDateIsNull() {
            addCriterion("graduate_date is null");
            return (Criteria) this;
        }

        public Criteria andGraduateDateIsNotNull() {
            addCriterion("graduate_date is not null");
            return (Criteria) this;
        }

        public Criteria andGraduateDateEqualTo(Date value) {
            addCriterionForJDBCDate("graduate_date =", value, "graduateDate");
            return (Criteria) this;
        }

        public Criteria andGraduateDateNotEqualTo(Date value) {
            addCriterionForJDBCDate("graduate_date <>", value, "graduateDate");
            return (Criteria) this;
        }

        public Criteria andGraduateDateGreaterThan(Date value) {
            addCriterionForJDBCDate("graduate_date >", value, "graduateDate");
            return (Criteria) this;
        }

        public Criteria andGraduateDateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("graduate_date >=", value, "graduateDate");
            return (Criteria) this;
        }

        public Criteria andGraduateDateLessThan(Date value) {
            addCriterionForJDBCDate("graduate_date <", value, "graduateDate");
            return (Criteria) this;
        }

        public Criteria andGraduateDateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("graduate_date <=", value, "graduateDate");
            return (Criteria) this;
        }

        public Criteria andGraduateDateIn(List<Date> values) {
            addCriterionForJDBCDate("graduate_date in", values, "graduateDate");
            return (Criteria) this;
        }

        public Criteria andGraduateDateNotIn(List<Date> values) {
            addCriterionForJDBCDate("graduate_date not in", values, "graduateDate");
            return (Criteria) this;
        }

        public Criteria andGraduateDateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("graduate_date between", value1, value2, "graduateDate");
            return (Criteria) this;
        }

        public Criteria andGraduateDateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("graduate_date not between", value1, value2, "graduateDate");
            return (Criteria) this;
        }

        public Criteria andIdentityIsNull() {
            addCriterion("identity is null");
            return (Criteria) this;
        }

        public Criteria andIdentityIsNotNull() {
            addCriterion("identity is not null");
            return (Criteria) this;
        }

        public Criteria andIdentityEqualTo(String value) {
            addCriterion("identity =", value, "identity");
            return (Criteria) this;
        }

        public Criteria andIdentityNotEqualTo(String value) {
            addCriterion("identity <>", value, "identity");
            return (Criteria) this;
        }

        public Criteria andIdentityGreaterThan(String value) {
            addCriterion("identity >", value, "identity");
            return (Criteria) this;
        }

        public Criteria andIdentityGreaterThanOrEqualTo(String value) {
            addCriterion("identity >=", value, "identity");
            return (Criteria) this;
        }

        public Criteria andIdentityLessThan(String value) {
            addCriterion("identity <", value, "identity");
            return (Criteria) this;
        }

        public Criteria andIdentityLessThanOrEqualTo(String value) {
            addCriterion("identity <=", value, "identity");
            return (Criteria) this;
        }

        public Criteria andIdentityLike(String value) {
            addCriterion("identity like", value, "identity");
            return (Criteria) this;
        }

        public Criteria andIdentityNotLike(String value) {
            addCriterion("identity not like", value, "identity");
            return (Criteria) this;
        }

        public Criteria andIdentityIn(List<String> values) {
            addCriterion("identity in", values, "identity");
            return (Criteria) this;
        }

        public Criteria andIdentityNotIn(List<String> values) {
            addCriterion("identity not in", values, "identity");
            return (Criteria) this;
        }

        public Criteria andIdentityBetween(String value1, String value2) {
            addCriterion("identity between", value1, value2, "identity");
            return (Criteria) this;
        }

        public Criteria andIdentityNotBetween(String value1, String value2) {
            addCriterion("identity not between", value1, value2, "identity");
            return (Criteria) this;
        }

        public Criteria andGarmentSizeIsNull() {
            addCriterion("garment_size is null");
            return (Criteria) this;
        }

        public Criteria andGarmentSizeIsNotNull() {
            addCriterion("garment_size is not null");
            return (Criteria) this;
        }

        public Criteria andGarmentSizeEqualTo(String value) {
            addCriterion("garment_size =", value, "garmentSize");
            return (Criteria) this;
        }

        public Criteria andGarmentSizeNotEqualTo(String value) {
            addCriterion("garment_size <>", value, "garmentSize");
            return (Criteria) this;
        }

        public Criteria andGarmentSizeGreaterThan(String value) {
            addCriterion("garment_size >", value, "garmentSize");
            return (Criteria) this;
        }

        public Criteria andGarmentSizeGreaterThanOrEqualTo(String value) {
            addCriterion("garment_size >=", value, "garmentSize");
            return (Criteria) this;
        }

        public Criteria andGarmentSizeLessThan(String value) {
            addCriterion("garment_size <", value, "garmentSize");
            return (Criteria) this;
        }

        public Criteria andGarmentSizeLessThanOrEqualTo(String value) {
            addCriterion("garment_size <=", value, "garmentSize");
            return (Criteria) this;
        }

        public Criteria andGarmentSizeLike(String value) {
            addCriterion("garment_size like", value, "garmentSize");
            return (Criteria) this;
        }

        public Criteria andGarmentSizeNotLike(String value) {
            addCriterion("garment_size not like", value, "garmentSize");
            return (Criteria) this;
        }

        public Criteria andGarmentSizeIn(List<String> values) {
            addCriterion("garment_size in", values, "garmentSize");
            return (Criteria) this;
        }

        public Criteria andGarmentSizeNotIn(List<String> values) {
            addCriterion("garment_size not in", values, "garmentSize");
            return (Criteria) this;
        }

        public Criteria andGarmentSizeBetween(String value1, String value2) {
            addCriterion("garment_size between", value1, value2, "garmentSize");
            return (Criteria) this;
        }

        public Criteria andGarmentSizeNotBetween(String value1, String value2) {
            addCriterion("garment_size not between", value1, value2, "garmentSize");
            return (Criteria) this;
        }

        public Criteria andWorkIndustryIsNull() {
            addCriterion("work_industry is null");
            return (Criteria) this;
        }

        public Criteria andWorkIndustryIsNotNull() {
            addCriterion("work_industry is not null");
            return (Criteria) this;
        }

        public Criteria andWorkIndustryEqualTo(String value) {
            addCriterion("work_industry =", value, "workIndustry");
            return (Criteria) this;
        }

        public Criteria andWorkIndustryNotEqualTo(String value) {
            addCriterion("work_industry <>", value, "workIndustry");
            return (Criteria) this;
        }

        public Criteria andWorkIndustryGreaterThan(String value) {
            addCriterion("work_industry >", value, "workIndustry");
            return (Criteria) this;
        }

        public Criteria andWorkIndustryGreaterThanOrEqualTo(String value) {
            addCriterion("work_industry >=", value, "workIndustry");
            return (Criteria) this;
        }

        public Criteria andWorkIndustryLessThan(String value) {
            addCriterion("work_industry <", value, "workIndustry");
            return (Criteria) this;
        }

        public Criteria andWorkIndustryLessThanOrEqualTo(String value) {
            addCriterion("work_industry <=", value, "workIndustry");
            return (Criteria) this;
        }

        public Criteria andWorkIndustryLike(String value) {
            addCriterion("work_industry like", value, "workIndustry");
            return (Criteria) this;
        }

        public Criteria andWorkIndustryNotLike(String value) {
            addCriterion("work_industry not like", value, "workIndustry");
            return (Criteria) this;
        }

        public Criteria andWorkIndustryIn(List<String> values) {
            addCriterion("work_industry in", values, "workIndustry");
            return (Criteria) this;
        }

        public Criteria andWorkIndustryNotIn(List<String> values) {
            addCriterion("work_industry not in", values, "workIndustry");
            return (Criteria) this;
        }

        public Criteria andWorkIndustryBetween(String value1, String value2) {
            addCriterion("work_industry between", value1, value2, "workIndustry");
            return (Criteria) this;
        }

        public Criteria andWorkIndustryNotBetween(String value1, String value2) {
            addCriterion("work_industry not between", value1, value2, "workIndustry");
            return (Criteria) this;
        }

        public Criteria andOccupationIsNull() {
            addCriterion("occupation is null");
            return (Criteria) this;
        }

        public Criteria andOccupationIsNotNull() {
            addCriterion("occupation is not null");
            return (Criteria) this;
        }

        public Criteria andOccupationEqualTo(String value) {
            addCriterion("occupation =", value, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationNotEqualTo(String value) {
            addCriterion("occupation <>", value, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationGreaterThan(String value) {
            addCriterion("occupation >", value, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationGreaterThanOrEqualTo(String value) {
            addCriterion("occupation >=", value, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationLessThan(String value) {
            addCriterion("occupation <", value, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationLessThanOrEqualTo(String value) {
            addCriterion("occupation <=", value, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationLike(String value) {
            addCriterion("occupation like", value, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationNotLike(String value) {
            addCriterion("occupation not like", value, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationIn(List<String> values) {
            addCriterion("occupation in", values, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationNotIn(List<String> values) {
            addCriterion("occupation not in", values, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationBetween(String value1, String value2) {
            addCriterion("occupation between", value1, value2, "occupation");
            return (Criteria) this;
        }

        public Criteria andOccupationNotBetween(String value1, String value2) {
            addCriterion("occupation not between", value1, value2, "occupation");
            return (Criteria) this;
        }

        public Criteria andAvailableCouponIsNull() {
            addCriterion("available_coupon is null");
            return (Criteria) this;
        }

        public Criteria andAvailableCouponIsNotNull() {
            addCriterion("available_coupon is not null");
            return (Criteria) this;
        }

        public Criteria andAvailableCouponEqualTo(String value) {
            addCriterion("available_coupon =", value, "availableCoupon");
            return (Criteria) this;
        }

        public Criteria andAvailableCouponNotEqualTo(String value) {
            addCriterion("available_coupon <>", value, "availableCoupon");
            return (Criteria) this;
        }

        public Criteria andAvailableCouponGreaterThan(String value) {
            addCriterion("available_coupon >", value, "availableCoupon");
            return (Criteria) this;
        }

        public Criteria andAvailableCouponGreaterThanOrEqualTo(String value) {
            addCriterion("available_coupon >=", value, "availableCoupon");
            return (Criteria) this;
        }

        public Criteria andAvailableCouponLessThan(String value) {
            addCriterion("available_coupon <", value, "availableCoupon");
            return (Criteria) this;
        }

        public Criteria andAvailableCouponLessThanOrEqualTo(String value) {
            addCriterion("available_coupon <=", value, "availableCoupon");
            return (Criteria) this;
        }

        public Criteria andAvailableCouponLike(String value) {
            addCriterion("available_coupon like", value, "availableCoupon");
            return (Criteria) this;
        }

        public Criteria andAvailableCouponNotLike(String value) {
            addCriterion("available_coupon not like", value, "availableCoupon");
            return (Criteria) this;
        }

        public Criteria andAvailableCouponIn(List<String> values) {
            addCriterion("available_coupon in", values, "availableCoupon");
            return (Criteria) this;
        }

        public Criteria andAvailableCouponNotIn(List<String> values) {
            addCriterion("available_coupon not in", values, "availableCoupon");
            return (Criteria) this;
        }

        public Criteria andAvailableCouponBetween(String value1, String value2) {
            addCriterion("available_coupon between", value1, value2, "availableCoupon");
            return (Criteria) this;
        }

        public Criteria andAvailableCouponNotBetween(String value1, String value2) {
            addCriterion("available_coupon not between", value1, value2, "availableCoupon");
            return (Criteria) this;
        }

        public Criteria andAvailableScoresIsNull() {
            addCriterion("available_scores is null");
            return (Criteria) this;
        }

        public Criteria andAvailableScoresIsNotNull() {
            addCriterion("available_scores is not null");
            return (Criteria) this;
        }

        public Criteria andAvailableScoresEqualTo(String value) {
            addCriterion("available_scores =", value, "availableScores");
            return (Criteria) this;
        }

        public Criteria andAvailableScoresNotEqualTo(String value) {
            addCriterion("available_scores <>", value, "availableScores");
            return (Criteria) this;
        }

        public Criteria andAvailableScoresGreaterThan(String value) {
            addCriterion("available_scores >", value, "availableScores");
            return (Criteria) this;
        }

        public Criteria andAvailableScoresGreaterThanOrEqualTo(String value) {
            addCriterion("available_scores >=", value, "availableScores");
            return (Criteria) this;
        }

        public Criteria andAvailableScoresLessThan(String value) {
            addCriterion("available_scores <", value, "availableScores");
            return (Criteria) this;
        }

        public Criteria andAvailableScoresLessThanOrEqualTo(String value) {
            addCriterion("available_scores <=", value, "availableScores");
            return (Criteria) this;
        }

        public Criteria andAvailableScoresLike(String value) {
            addCriterion("available_scores like", value, "availableScores");
            return (Criteria) this;
        }

        public Criteria andAvailableScoresNotLike(String value) {
            addCriterion("available_scores not like", value, "availableScores");
            return (Criteria) this;
        }

        public Criteria andAvailableScoresIn(List<String> values) {
            addCriterion("available_scores in", values, "availableScores");
            return (Criteria) this;
        }

        public Criteria andAvailableScoresNotIn(List<String> values) {
            addCriterion("available_scores not in", values, "availableScores");
            return (Criteria) this;
        }

        public Criteria andAvailableScoresBetween(String value1, String value2) {
            addCriterion("available_scores between", value1, value2, "availableScores");
            return (Criteria) this;
        }

        public Criteria andAvailableScoresNotBetween(String value1, String value2) {
            addCriterion("available_scores not between", value1, value2, "availableScores");
            return (Criteria) this;
        }

        public Criteria andIsMemberIsNull() {
            addCriterion("is_member is null");
            return (Criteria) this;
        }

        public Criteria andIsMemberIsNotNull() {
            addCriterion("is_member is not null");
            return (Criteria) this;
        }

        public Criteria andIsMemberEqualTo(Integer value) {
            addCriterion("is_member =", value, "isMember");
            return (Criteria) this;
        }

        public Criteria andIsMemberNotEqualTo(Integer value) {
            addCriterion("is_member <>", value, "isMember");
            return (Criteria) this;
        }

        public Criteria andIsMemberGreaterThan(Integer value) {
            addCriterion("is_member >", value, "isMember");
            return (Criteria) this;
        }

        public Criteria andIsMemberGreaterThanOrEqualTo(Integer value) {
            addCriterion("is_member >=", value, "isMember");
            return (Criteria) this;
        }

        public Criteria andIsMemberLessThan(Integer value) {
            addCriterion("is_member <", value, "isMember");
            return (Criteria) this;
        }

        public Criteria andIsMemberLessThanOrEqualTo(Integer value) {
            addCriterion("is_member <=", value, "isMember");
            return (Criteria) this;
        }

        public Criteria andIsMemberIn(List<Integer> values) {
            addCriterion("is_member in", values, "isMember");
            return (Criteria) this;
        }

        public Criteria andIsMemberNotIn(List<Integer> values) {
            addCriterion("is_member not in", values, "isMember");
            return (Criteria) this;
        }

        public Criteria andIsMemberBetween(Integer value1, Integer value2) {
            addCriterion("is_member between", value1, value2, "isMember");
            return (Criteria) this;
        }

        public Criteria andIsMemberNotBetween(Integer value1, Integer value2) {
            addCriterion("is_member not between", value1, value2, "isMember");
            return (Criteria) this;
        }

        public Criteria andStateIsNull() {
            addCriterion("state is null");
            return (Criteria) this;
        }

        public Criteria andStateIsNotNull() {
            addCriterion("state is not null");
            return (Criteria) this;
        }

        public Criteria andStateEqualTo(Integer value) {
            addCriterion("state =", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotEqualTo(Integer value) {
            addCriterion("state <>", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateGreaterThan(Integer value) {
            addCriterion("state >", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateGreaterThanOrEqualTo(Integer value) {
            addCriterion("state >=", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateLessThan(Integer value) {
            addCriterion("state <", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateLessThanOrEqualTo(Integer value) {
            addCriterion("state <=", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateIn(List<Integer> values) {
            addCriterion("state in", values, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotIn(List<Integer> values) {
            addCriterion("state not in", values, "state");
            return (Criteria) this;
        }

        public Criteria andStateBetween(Integer value1, Integer value2) {
            addCriterion("state between", value1, value2, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotBetween(Integer value1, Integer value2) {
            addCriterion("state not between", value1, value2, "state");
            return (Criteria) this;
        }

        public Criteria andCreateByIsNull() {
            addCriterion("create_by is null");
            return (Criteria) this;
        }

        public Criteria andCreateByIsNotNull() {
            addCriterion("create_by is not null");
            return (Criteria) this;
        }

        public Criteria andCreateByEqualTo(String value) {
            addCriterion("create_by =", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByNotEqualTo(String value) {
            addCriterion("create_by <>", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByGreaterThan(String value) {
            addCriterion("create_by >", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByGreaterThanOrEqualTo(String value) {
            addCriterion("create_by >=", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByLessThan(String value) {
            addCriterion("create_by <", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByLessThanOrEqualTo(String value) {
            addCriterion("create_by <=", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByLike(String value) {
            addCriterion("create_by like", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByNotLike(String value) {
            addCriterion("create_by not like", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByIn(List<String> values) {
            addCriterion("create_by in", values, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByNotIn(List<String> values) {
            addCriterion("create_by not in", values, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByBetween(String value1, String value2) {
            addCriterion("create_by between", value1, value2, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByNotBetween(String value1, String value2) {
            addCriterion("create_by not between", value1, value2, "createBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByIsNull() {
            addCriterion("update_by is null");
            return (Criteria) this;
        }

        public Criteria andUpdateByIsNotNull() {
            addCriterion("update_by is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateByEqualTo(String value) {
            addCriterion("update_by =", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByNotEqualTo(String value) {
            addCriterion("update_by <>", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByGreaterThan(String value) {
            addCriterion("update_by >", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByGreaterThanOrEqualTo(String value) {
            addCriterion("update_by >=", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByLessThan(String value) {
            addCriterion("update_by <", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByLessThanOrEqualTo(String value) {
            addCriterion("update_by <=", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByLike(String value) {
            addCriterion("update_by like", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByNotLike(String value) {
            addCriterion("update_by not like", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByIn(List<String> values) {
            addCriterion("update_by in", values, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByNotIn(List<String> values) {
            addCriterion("update_by not in", values, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByBetween(String value1, String value2) {
            addCriterion("update_by between", value1, value2, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByNotBetween(String value1, String value2) {
            addCriterion("update_by not between", value1, value2, "updateBy");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("update_time is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("update_time is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(Date value) {
            addCriterion("update_time =", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualTo(Date value) {
            addCriterion("update_time <>", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThan(Date value) {
            addCriterion("update_time >", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("update_time >=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThan(Date value) {
            addCriterion("update_time <", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
            addCriterion("update_time <=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(List<Date> values) {
            addCriterion("update_time in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(List<Date> values) {
            addCriterion("update_time not in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
            addCriterion("update_time between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
            addCriterion("update_time not between", value1, value2, "updateTime");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}